package classes;
 
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import beans.Autor;
import beans.Categoria;
import beans.Comentario;
import beans.Imagem;
import beans.Noticia;
import beans.Tag;
import beans.Video;
import beans.Voto;

import dbclass.AutorDAO;
import dbclass.AutorJDBC;
import dbclass.CategoriaDAO;
import dbclass.CategoriaJDBC;
import dbclass.ComentarioDAO;
import dbclass.ComentarioJDBC;
import dbclass.ImagemDAO;
import dbclass.ImagemJDBC;
import dbclass.NoticiaDAO;
import dbclass.NoticiaJDBC;
import dbclass.TagDAO;
import dbclass.TagJDBC;
import dbclass.VideoDAO;
import dbclass.VideoJDBC;
import dbclass.VotoDAO;
import dbclass.VotoJDBC;

class TestDB {
	
	  
	public static void main(String[] args) throws SQLException, ClassNotFoundException {

//		Statement stm = DbClass.getConnection().createStatement();
//		
//		ResultSet rs = stm.executeQuery("SELECT * FROM autor");
//		
//		while(rs.next()){
//			System.out.println(rs.getString("nome"));
//			
//		}
		
//		Autor a = new Autor(4, "a", "a", "a");
//		AutorDAO autor = new AutorJDBC();
//		autor.insert(a);
//		
//		autor.update(a);
//		autor.delete(4);
//		
//		List<Autor> autores = new ArrayList<Autor>();
//		
//		autores = autor.findAll();
//		System.out.println(autores.get(0).getNome());
//		System.out.println(autores.get(1).getNome());
//		System.out.println(autores.get(2).getNome());
//		System.out.println(autores.get(3).getNome());
		
//		Autor a1 = autor.findById(3);
//		System.out.println(a1.getNome());
//		
//		Tag tag = new Tag("Tag1", 2);
//		TagDAO tagdao = new TagJDBC();
//		
		//tagdao.insert(tag);
		//tagdao.update(tag);
		
//		List<Tag> tags = new ArrayList<Tag>();
//		tags = tagdao.findAll();
//		System.out.println(tags.get(2).getNome());
//		System.out.println(tags.get(1).getNome());
		
//		tagdao.delete("Tag1");
		
		Categoria cat = new Categoria(2, "Populares");
		CategoriaDAO catDAO = new CategoriaJDBC();
		
//		catDAO.insert(cat);
//		catDAO.update(cat);
		
//		catDAO.delete(11);
		
//		List<Categoria> categorias = catDAO.findAll();
//		
//		System.out.println(categorias.get(0).getNome());
//		System.out.println(categorias.get(1).getNome());
		
//		System.out.println(catDAO.findById(cat.getId()).getNome());
		
//		Voto voto = new Voto(2, "111", 4, 2);
//		VotoDAO votoDAO = new VotoJDBC();
		
//		votoDAO.insert(voto);
//		votoDAO.update(voto);
//		votoDAO.delete(voto.getId());
		
//		List<Voto> votos = votoDAO.findAll();
//		
//		System.out.println(votos.get(0).getId());
//		System.out.println(votos.get(1).getId());
		
		SimpleDateFormat ISO8601UTC =
		      new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		    String now = ISO8601UTC.format(new Date());
//		    System.out.println(now);
		    
//		System.out.println(votoDAO.findById(voto.getId()).getNota());
//		Timestamp time = new Timestamp();
		
//		data = dateTime.getDate();
////		Comentario comentario = new Comentario(1, "Corpo 3",now , 1);
////		ComentarioDAO comentarioDAo = new ComentarioJDBC();
////		
////		comentarioDAo.insert(comentario);
////		comentarioDAo.update(comentario
//		
////		comentarioDAo.delete(comentario.getId());
//		List<Comentario> comentarios = comentarioDAo.findAll();
//		
//		System.out.println(comentarios.get(0).getCorpo());
//		System.out.println(comentarios.get(1).getCorpo());
//		
//		System.out.println(comentarioDAo.findById(2).getCorpo());
		
		    
//		   public Noticia(long id, String titulo, String corpo, String data,
//					long id_autor, long id_categoria)
		
//		Noticia noticia = new Noticia(1, "Noticia 2", "lasjdad asdlasd a da sd as asdasd", now, 1, 1);
		NoticiaDAO noticiaDAO = new NoticiaJDBC();
		
//		noticiaDAO.insertImage(2, 3);
//		noticiaDAO.deleteImage(2,3);
		
//		noticiaDAO.deleteVideo(2, 1);
		//noticiaDAO.insertVideo(2, 3);
		
		
		
		//noticiaDAO.insert(noticia);
//		noticiaDAO.update(noticia);
//		noticiaDAO.delete(noticia.getId());
		
		List<Noticia> noticias = noticiaDAO.findAll();
		
		System.out.println(noticias.get(0).getCorpo());
		System.out.println(noticias.get(1).getCorpo());
		
//		System.out.println(noticiaDAO.findById(2).getCorpo());
		
//		Imagem imagem = new Imagem(2, "http://www.terra.com", "Terra");
//		ImagemDAO imagemDAO = new ImagemJDBC();
		
//		imagemDAO.insert(imagem);
//		imagemDAO.update(imagem);
		
//		imagemDAO.delete(2);
		
//		List<Imagem> imagens = imagemDAO.findAll();
//		System.out.println(imagens.get(0).getTitulo());
//		System.out.println(imagens.get(1).getTitulo());
		
//		System.out.println(imagemDAO.findById(3));
		
		
//		Video video = new Video(2, "http://www.google.com", "Google1");
		VideoDAO videoDAO = new VideoJDBC();
		
//		videoDAO.insert(video);
//		videoDAO.update(video);
		
		videoDAO.delete(5);
		
//		System.out.println(videoDAO.findById(3));
		
		
		
		
	}
}
  ;